package com.shangdiao.sd_server.generator.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SdInternshipExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SdInternshipExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andInternshipIdIsNull() {
            addCriterion("INTERNSHIP_ID is null");
            return (Criteria) this;
        }

        public Criteria andInternshipIdIsNotNull() {
            addCriterion("INTERNSHIP_ID is not null");
            return (Criteria) this;
        }

        public Criteria andInternshipIdEqualTo(Integer value) {
            addCriterion("INTERNSHIP_ID =", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdNotEqualTo(Integer value) {
            addCriterion("INTERNSHIP_ID <>", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdGreaterThan(Integer value) {
            addCriterion("INTERNSHIP_ID >", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("INTERNSHIP_ID >=", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdLessThan(Integer value) {
            addCriterion("INTERNSHIP_ID <", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdLessThanOrEqualTo(Integer value) {
            addCriterion("INTERNSHIP_ID <=", value, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdIn(List<Integer> values) {
            addCriterion("INTERNSHIP_ID in", values, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdNotIn(List<Integer> values) {
            addCriterion("INTERNSHIP_ID not in", values, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdBetween(Integer value1, Integer value2) {
            addCriterion("INTERNSHIP_ID between", value1, value2, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipIdNotBetween(Integer value1, Integer value2) {
            addCriterion("INTERNSHIP_ID not between", value1, value2, "internshipId");
            return (Criteria) this;
        }

        public Criteria andInternshipNameIsNull() {
            addCriterion("INTERNSHIP_NAME is null");
            return (Criteria) this;
        }

        public Criteria andInternshipNameIsNotNull() {
            addCriterion("INTERNSHIP_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andInternshipNameEqualTo(String value) {
            addCriterion("INTERNSHIP_NAME =", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameNotEqualTo(String value) {
            addCriterion("INTERNSHIP_NAME <>", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameGreaterThan(String value) {
            addCriterion("INTERNSHIP_NAME >", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameGreaterThanOrEqualTo(String value) {
            addCriterion("INTERNSHIP_NAME >=", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameLessThan(String value) {
            addCriterion("INTERNSHIP_NAME <", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameLessThanOrEqualTo(String value) {
            addCriterion("INTERNSHIP_NAME <=", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameLike(String value) {
            addCriterion("INTERNSHIP_NAME like", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameNotLike(String value) {
            addCriterion("INTERNSHIP_NAME not like", value, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameIn(List<String> values) {
            addCriterion("INTERNSHIP_NAME in", values, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameNotIn(List<String> values) {
            addCriterion("INTERNSHIP_NAME not in", values, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameBetween(String value1, String value2) {
            addCriterion("INTERNSHIP_NAME between", value1, value2, "internshipName");
            return (Criteria) this;
        }

        public Criteria andInternshipNameNotBetween(String value1, String value2) {
            addCriterion("INTERNSHIP_NAME not between", value1, value2, "internshipName");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("COMPANY_ID is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("COMPANY_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(Integer value) {
            addCriterion("COMPANY_ID =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(Integer value) {
            addCriterion("COMPANY_ID <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(Integer value) {
            addCriterion("COMPANY_ID >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("COMPANY_ID >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(Integer value) {
            addCriterion("COMPANY_ID <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(Integer value) {
            addCriterion("COMPANY_ID <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<Integer> values) {
            addCriterion("COMPANY_ID in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<Integer> values) {
            addCriterion("COMPANY_ID not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(Integer value1, Integer value2) {
            addCriterion("COMPANY_ID between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("COMPANY_ID not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdIsNull() {
            addCriterion("DIC_INTERNSHIP_FIELD_ID is null");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdIsNotNull() {
            addCriterion("DIC_INTERNSHIP_FIELD_ID is not null");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdEqualTo(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID =", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdNotEqualTo(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID <>", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdGreaterThan(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID >", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID >=", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdLessThan(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID <", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdLessThanOrEqualTo(Integer value) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID <=", value, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdIn(List<Integer> values) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID in", values, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdNotIn(List<Integer> values) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID not in", values, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdBetween(Integer value1, Integer value2) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID between", value1, value2, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldIdNotBetween(Integer value1, Integer value2) {
            addCriterion("DIC_INTERNSHIP_FIELD_ID not between", value1, value2, "dicInternshipFieldId");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameIsNull() {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME is null");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameIsNotNull() {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameEqualTo(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME =", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameNotEqualTo(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME <>", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameGreaterThan(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME >", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameGreaterThanOrEqualTo(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME >=", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameLessThan(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME <", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameLessThanOrEqualTo(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME <=", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameLike(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME like", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameNotLike(String value) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME not like", value, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameIn(List<String> values) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME in", values, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameNotIn(List<String> values) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME not in", values, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameBetween(String value1, String value2) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME between", value1, value2, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andDicInternshipFieldNameNotBetween(String value1, String value2) {
            addCriterion("DIC_INTERNSHIP_FIELD_NAME not between", value1, value2, "dicInternshipFieldName");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryIsNull() {
            addCriterion("MAX_SALARY is null");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryIsNotNull() {
            addCriterion("MAX_SALARY is not null");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryEqualTo(Double value) {
            addCriterion("MAX_SALARY =", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryNotEqualTo(Double value) {
            addCriterion("MAX_SALARY <>", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryGreaterThan(Double value) {
            addCriterion("MAX_SALARY >", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryGreaterThanOrEqualTo(Double value) {
            addCriterion("MAX_SALARY >=", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryLessThan(Double value) {
            addCriterion("MAX_SALARY <", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryLessThanOrEqualTo(Double value) {
            addCriterion("MAX_SALARY <=", value, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryIn(List<Double> values) {
            addCriterion("MAX_SALARY in", values, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryNotIn(List<Double> values) {
            addCriterion("MAX_SALARY not in", values, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryBetween(Double value1, Double value2) {
            addCriterion("MAX_SALARY between", value1, value2, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMaxSalaryNotBetween(Double value1, Double value2) {
            addCriterion("MAX_SALARY not between", value1, value2, "maxSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryIsNull() {
            addCriterion("MIN_SALARY is null");
            return (Criteria) this;
        }

        public Criteria andMinSalaryIsNotNull() {
            addCriterion("MIN_SALARY is not null");
            return (Criteria) this;
        }

        public Criteria andMinSalaryEqualTo(Double value) {
            addCriterion("MIN_SALARY =", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryNotEqualTo(Double value) {
            addCriterion("MIN_SALARY <>", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryGreaterThan(Double value) {
            addCriterion("MIN_SALARY >", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryGreaterThanOrEqualTo(Double value) {
            addCriterion("MIN_SALARY >=", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryLessThan(Double value) {
            addCriterion("MIN_SALARY <", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryLessThanOrEqualTo(Double value) {
            addCriterion("MIN_SALARY <=", value, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryIn(List<Double> values) {
            addCriterion("MIN_SALARY in", values, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryNotIn(List<Double> values) {
            addCriterion("MIN_SALARY not in", values, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryBetween(Double value1, Double value2) {
            addCriterion("MIN_SALARY between", value1, value2, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinSalaryNotBetween(Double value1, Double value2) {
            addCriterion("MIN_SALARY not between", value1, value2, "minSalary");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdIsNull() {
            addCriterion("MIN_EDUCATION_ID is null");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdIsNotNull() {
            addCriterion("MIN_EDUCATION_ID is not null");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdEqualTo(Integer value) {
            addCriterion("MIN_EDUCATION_ID =", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdNotEqualTo(Integer value) {
            addCriterion("MIN_EDUCATION_ID <>", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdGreaterThan(Integer value) {
            addCriterion("MIN_EDUCATION_ID >", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("MIN_EDUCATION_ID >=", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdLessThan(Integer value) {
            addCriterion("MIN_EDUCATION_ID <", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdLessThanOrEqualTo(Integer value) {
            addCriterion("MIN_EDUCATION_ID <=", value, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdIn(List<Integer> values) {
            addCriterion("MIN_EDUCATION_ID in", values, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdNotIn(List<Integer> values) {
            addCriterion("MIN_EDUCATION_ID not in", values, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdBetween(Integer value1, Integer value2) {
            addCriterion("MIN_EDUCATION_ID between", value1, value2, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationIdNotBetween(Integer value1, Integer value2) {
            addCriterion("MIN_EDUCATION_ID not between", value1, value2, "minEducationId");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameIsNull() {
            addCriterion("MIN_EDUCATION_NAME is null");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameIsNotNull() {
            addCriterion("MIN_EDUCATION_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameEqualTo(String value) {
            addCriterion("MIN_EDUCATION_NAME =", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameNotEqualTo(String value) {
            addCriterion("MIN_EDUCATION_NAME <>", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameGreaterThan(String value) {
            addCriterion("MIN_EDUCATION_NAME >", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameGreaterThanOrEqualTo(String value) {
            addCriterion("MIN_EDUCATION_NAME >=", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameLessThan(String value) {
            addCriterion("MIN_EDUCATION_NAME <", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameLessThanOrEqualTo(String value) {
            addCriterion("MIN_EDUCATION_NAME <=", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameLike(String value) {
            addCriterion("MIN_EDUCATION_NAME like", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameNotLike(String value) {
            addCriterion("MIN_EDUCATION_NAME not like", value, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameIn(List<String> values) {
            addCriterion("MIN_EDUCATION_NAME in", values, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameNotIn(List<String> values) {
            addCriterion("MIN_EDUCATION_NAME not in", values, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameBetween(String value1, String value2) {
            addCriterion("MIN_EDUCATION_NAME between", value1, value2, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andMinEducationNameNotBetween(String value1, String value2) {
            addCriterion("MIN_EDUCATION_NAME not between", value1, value2, "minEducationName");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersIsNull() {
            addCriterion("RECRUITING_NUMBERS is null");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersIsNotNull() {
            addCriterion("RECRUITING_NUMBERS is not null");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersEqualTo(Integer value) {
            addCriterion("RECRUITING_NUMBERS =", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersNotEqualTo(Integer value) {
            addCriterion("RECRUITING_NUMBERS <>", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersGreaterThan(Integer value) {
            addCriterion("RECRUITING_NUMBERS >", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersGreaterThanOrEqualTo(Integer value) {
            addCriterion("RECRUITING_NUMBERS >=", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersLessThan(Integer value) {
            addCriterion("RECRUITING_NUMBERS <", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersLessThanOrEqualTo(Integer value) {
            addCriterion("RECRUITING_NUMBERS <=", value, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersIn(List<Integer> values) {
            addCriterion("RECRUITING_NUMBERS in", values, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersNotIn(List<Integer> values) {
            addCriterion("RECRUITING_NUMBERS not in", values, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersBetween(Integer value1, Integer value2) {
            addCriterion("RECRUITING_NUMBERS between", value1, value2, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andRecruitingNumbersNotBetween(Integer value1, Integer value2) {
            addCriterion("RECRUITING_NUMBERS not between", value1, value2, "recruitingNumbers");
            return (Criteria) this;
        }

        public Criteria andDistrictIsNull() {
            addCriterion("DISTRICT is null");
            return (Criteria) this;
        }

        public Criteria andDistrictIsNotNull() {
            addCriterion("DISTRICT is not null");
            return (Criteria) this;
        }

        public Criteria andDistrictEqualTo(String value) {
            addCriterion("DISTRICT =", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictNotEqualTo(String value) {
            addCriterion("DISTRICT <>", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictGreaterThan(String value) {
            addCriterion("DISTRICT >", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictGreaterThanOrEqualTo(String value) {
            addCriterion("DISTRICT >=", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictLessThan(String value) {
            addCriterion("DISTRICT <", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictLessThanOrEqualTo(String value) {
            addCriterion("DISTRICT <=", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictLike(String value) {
            addCriterion("DISTRICT like", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictNotLike(String value) {
            addCriterion("DISTRICT not like", value, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictIn(List<String> values) {
            addCriterion("DISTRICT in", values, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictNotIn(List<String> values) {
            addCriterion("DISTRICT not in", values, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictBetween(String value1, String value2) {
            addCriterion("DISTRICT between", value1, value2, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictNotBetween(String value1, String value2) {
            addCriterion("DISTRICT not between", value1, value2, "district");
            return (Criteria) this;
        }

        public Criteria andDistrictIdIsNull() {
            addCriterion("DISTRICT_ID is null");
            return (Criteria) this;
        }

        public Criteria andDistrictIdIsNotNull() {
            addCriterion("DISTRICT_ID is not null");
            return (Criteria) this;
        }

        public Criteria andDistrictIdEqualTo(Integer value) {
            addCriterion("DISTRICT_ID =", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdNotEqualTo(Integer value) {
            addCriterion("DISTRICT_ID <>", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdGreaterThan(Integer value) {
            addCriterion("DISTRICT_ID >", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("DISTRICT_ID >=", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdLessThan(Integer value) {
            addCriterion("DISTRICT_ID <", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdLessThanOrEqualTo(Integer value) {
            addCriterion("DISTRICT_ID <=", value, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdIn(List<Integer> values) {
            addCriterion("DISTRICT_ID in", values, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdNotIn(List<Integer> values) {
            addCriterion("DISTRICT_ID not in", values, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdBetween(Integer value1, Integer value2) {
            addCriterion("DISTRICT_ID between", value1, value2, "districtId");
            return (Criteria) this;
        }

        public Criteria andDistrictIdNotBetween(Integer value1, Integer value2) {
            addCriterion("DISTRICT_ID not between", value1, value2, "districtId");
            return (Criteria) this;
        }

        public Criteria andLocationIsNull() {
            addCriterion("LOCATION is null");
            return (Criteria) this;
        }

        public Criteria andLocationIsNotNull() {
            addCriterion("LOCATION is not null");
            return (Criteria) this;
        }

        public Criteria andLocationEqualTo(String value) {
            addCriterion("LOCATION =", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationNotEqualTo(String value) {
            addCriterion("LOCATION <>", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationGreaterThan(String value) {
            addCriterion("LOCATION >", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationGreaterThanOrEqualTo(String value) {
            addCriterion("LOCATION >=", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationLessThan(String value) {
            addCriterion("LOCATION <", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationLessThanOrEqualTo(String value) {
            addCriterion("LOCATION <=", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationLike(String value) {
            addCriterion("LOCATION like", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationNotLike(String value) {
            addCriterion("LOCATION not like", value, "location");
            return (Criteria) this;
        }

        public Criteria andLocationIn(List<String> values) {
            addCriterion("LOCATION in", values, "location");
            return (Criteria) this;
        }

        public Criteria andLocationNotIn(List<String> values) {
            addCriterion("LOCATION not in", values, "location");
            return (Criteria) this;
        }

        public Criteria andLocationBetween(String value1, String value2) {
            addCriterion("LOCATION between", value1, value2, "location");
            return (Criteria) this;
        }

        public Criteria andLocationNotBetween(String value1, String value2) {
            addCriterion("LOCATION not between", value1, value2, "location");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("DESCRIPTION is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("DESCRIPTION is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("DESCRIPTION =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("DESCRIPTION <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("DESCRIPTION >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("DESCRIPTION >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("DESCRIPTION <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("DESCRIPTION <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("DESCRIPTION like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("DESCRIPTION not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("DESCRIPTION in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("DESCRIPTION not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("DESCRIPTION between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("DESCRIPTION not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andRequirementIsNull() {
            addCriterion("REQUIREMENT is null");
            return (Criteria) this;
        }

        public Criteria andRequirementIsNotNull() {
            addCriterion("REQUIREMENT is not null");
            return (Criteria) this;
        }

        public Criteria andRequirementEqualTo(String value) {
            addCriterion("REQUIREMENT =", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementNotEqualTo(String value) {
            addCriterion("REQUIREMENT <>", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementGreaterThan(String value) {
            addCriterion("REQUIREMENT >", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementGreaterThanOrEqualTo(String value) {
            addCriterion("REQUIREMENT >=", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementLessThan(String value) {
            addCriterion("REQUIREMENT <", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementLessThanOrEqualTo(String value) {
            addCriterion("REQUIREMENT <=", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementLike(String value) {
            addCriterion("REQUIREMENT like", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementNotLike(String value) {
            addCriterion("REQUIREMENT not like", value, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementIn(List<String> values) {
            addCriterion("REQUIREMENT in", values, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementNotIn(List<String> values) {
            addCriterion("REQUIREMENT not in", values, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementBetween(String value1, String value2) {
            addCriterion("REQUIREMENT between", value1, value2, "requirement");
            return (Criteria) this;
        }

        public Criteria andRequirementNotBetween(String value1, String value2) {
            addCriterion("REQUIREMENT not between", value1, value2, "requirement");
            return (Criteria) this;
        }

        public Criteria andTelIsNull() {
            addCriterion("TEL is null");
            return (Criteria) this;
        }

        public Criteria andTelIsNotNull() {
            addCriterion("TEL is not null");
            return (Criteria) this;
        }

        public Criteria andTelEqualTo(String value) {
            addCriterion("TEL =", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotEqualTo(String value) {
            addCriterion("TEL <>", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelGreaterThan(String value) {
            addCriterion("TEL >", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelGreaterThanOrEqualTo(String value) {
            addCriterion("TEL >=", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLessThan(String value) {
            addCriterion("TEL <", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLessThanOrEqualTo(String value) {
            addCriterion("TEL <=", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLike(String value) {
            addCriterion("TEL like", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotLike(String value) {
            addCriterion("TEL not like", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelIn(List<String> values) {
            addCriterion("TEL in", values, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotIn(List<String> values) {
            addCriterion("TEL not in", values, "tel");
            return (Criteria) this;
        }

        public Criteria andTelBetween(String value1, String value2) {
            addCriterion("TEL between", value1, value2, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotBetween(String value1, String value2) {
            addCriterion("TEL not between", value1, value2, "tel");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("CREATE_DATE is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("CREATE_DATE is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("CREATE_DATE =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("CREATE_DATE <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("CREATE_DATE >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("CREATE_DATE >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("CREATE_DATE <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("CREATE_DATE <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("CREATE_DATE in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("CREATE_DATE not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("CREATE_DATE between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("CREATE_DATE not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("STATUS is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("STATUS is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("STATUS =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("STATUS <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("STATUS >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("STATUS >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("STATUS <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("STATUS <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("STATUS in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("STATUS not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("STATUS between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("STATUS not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andDelIsNull() {
            addCriterion("DEL is null");
            return (Criteria) this;
        }

        public Criteria andDelIsNotNull() {
            addCriterion("DEL is not null");
            return (Criteria) this;
        }

        public Criteria andDelEqualTo(Integer value) {
            addCriterion("DEL =", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelNotEqualTo(Integer value) {
            addCriterion("DEL <>", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelGreaterThan(Integer value) {
            addCriterion("DEL >", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelGreaterThanOrEqualTo(Integer value) {
            addCriterion("DEL >=", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelLessThan(Integer value) {
            addCriterion("DEL <", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelLessThanOrEqualTo(Integer value) {
            addCriterion("DEL <=", value, "del");
            return (Criteria) this;
        }

        public Criteria andDelIn(List<Integer> values) {
            addCriterion("DEL in", values, "del");
            return (Criteria) this;
        }

        public Criteria andDelNotIn(List<Integer> values) {
            addCriterion("DEL not in", values, "del");
            return (Criteria) this;
        }

        public Criteria andDelBetween(Integer value1, Integer value2) {
            addCriterion("DEL between", value1, value2, "del");
            return (Criteria) this;
        }

        public Criteria andDelNotBetween(Integer value1, Integer value2) {
            addCriterion("DEL not between", value1, value2, "del");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}